Skip to content

CRINGE-210: Migrate from pip and pip-tools to uv.#202

Merged
smarnach merged 3 commits intomainfrom
uv
Mar 18, 2026
Merged

CRINGE-210: Migrate from pip and pip-tools to uv.#202
smarnach merged 3 commits intomainfrom
uv

Conversation

@smarnach
Copy link
Copy Markdown
Contributor

@smarnach smarnach commented Mar 12, 2026

This migrates obs-common to uv. Some of the changes are similar to what I did for our services, but a lot of this is different since this is a library and not a service application.

With this PR, uv replaces pip, pip-tools, setuptools, setuptools-scm and twine.

I decided to exclude uv.lock from this repository. Including the lock file improves the consistency of CI, but adds a lot of overhead with Dependabot upgrades – see the Jira ticket for more details. I went back and forth on whether to stick with setuptools or use uv's own build backend. I eventually figured out that the latter is overall simpler and faster, so this is what I went with.

The Dockerfile changes were only lightly tested since I plan to drop the main Dockerfile and the devcontainer setup in a follow-up PR (https://mozilla-hub.atlassian.net/browse/CRINGE-225). I tried testing the GAR upload code locally to the degree that's possible, but we'll only figure out whether it's actually working once we merge this PR into the main branch.

https://mozilla-hub.atlassian.net/browse/CRINGE-210

@smarnach smarnach force-pushed the uv branch 2 times, most recently from 64bb169 to 25371ae Compare March 13, 2026 14:06
@smarnach smarnach marked this pull request as ready for review March 13, 2026 14:57
@smarnach smarnach requested a review from a team as a code owner March 13, 2026 14:57
@smarnach smarnach requested a review from biancadanforth March 13, 2026 16:21
@biancadanforth biancadanforth self-assigned this Mar 16, 2026
Copy link
Copy Markdown
Contributor

@biancadanforth biancadanforth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some questions in line. Mostly it'd be helpful to have a reminder somewhere about the fact that CI could fail due to an obs-common dependency upgrade that isn't tracked in the repo, and a straightforward way of checking that.

Comment thread .github/workflows/build.yaml
Comment thread .dockerignore
Comment thread .gitignore
Comment thread pyproject.toml Outdated
@smarnach smarnach added this pull request to the merge queue Mar 18, 2026
Merged via the queue into main with commit 046e297 Mar 18, 2026
5 checks passed
@smarnach smarnach deleted the uv branch March 18, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants